package great.project.common.utils;

/**
 * 装换工具
 *
 * @author Administrator
 */
public class ConvertUtils {

    /**
     * string 转成 int 如果失败返回指定的数字
     *
     * @param str        待转换的字符串
     * @param defaultInt 如果失败返回的数字
     * @return 结果
     */
    public static int toInt(String str, int defaultInt) {
        try {
            return Integer.parseInt(str);
        } catch (Exception ignored) {
        }
        return defaultInt;
    }

    /**
     * string 转成 int 如果失败返回 -1
     *
     * @param str 待转换的字符串
     * @return 结果
     */
    public static int toInt(String str) {
        return toInt(str, -1);
    }

    /**
     * string 转成 long 如果失败返回指定的数字
     *
     * @param str         待转换的字符串
     * @param defaultLong 如果失败返回的数字
     * @return 结果
     */
    public static long toLong(String str, long defaultLong) {
        try {
            return Long.parseLong(str);
        } catch (Exception ignored) {
        }
        return defaultLong;
    }


    /**
     * string 转成 long 如果失败返回 -1
     *
     * @param str 待转换的字符串
     * @return 结果
     */
    public static long toLong(String str) {
        return toLong(str, -1);
    }

    /**
     * string 转成 double 如果失败返回指定的小数
     *
     * @param str           待转换的字符串
     * @param defaultDouble 如果失败返回的小数
     * @return 结果
     */
    public static double toDouble(String str, long defaultDouble) {
        try {
            return Double.parseDouble(str);
        } catch (Exception ignored) {
        }
        return defaultDouble;
    }

    /**
     * string 转成 double 如果失败返回 -1
     *
     * @param str 待转换的字符串
     * @return 结果
     */
    public static double toDouble(String str) {
        return toDouble(str, -1);
    }


}
